Combining the Sweep-Line Method with the Use of an External-Memory Priority Queue
نویسندگان
چکیده
The sweep-line method is an explicit-state model checking technique that uses a notion of progress to delete states from internal memory during state space exploration and thereby reduce peak memory usage. The sweep-line algorithm relies on the use of a priority queue where the progress value assigned to a state determines the priority of the state. In earlier implementations of the sweep-line method the progress priority queue is kept in internal memory together with the current layer of states being explored. In this paper we investigate a scheme where the current layer is stored in internal memory while the priority queue is stored in external memory. From the perspective of the sweep-line method, we show that this combination can yield a significant reduction in peak memory usage compared to a pure internal memory implementation. On an average of 60 example instances, this combination reduced peak memory usage by more than 25% at the cost of an increase execution time by a factor 2.5. From the perspective of external memory state space exploration, we demonstrate experimentally that the state deletion performed by the sweep-line method may reduce the I/O overhead induced by duplicate detection compared to a pure external memory state space exploration method.
منابع مشابه
Efficient External-Memory Data Structures and Applications
In this thesis we study the Input/Output (I/O) complexity of large-scale problems arising e.g. in the areas of database systems, geographic information systems, VLSI design systems and computer graphics, and design I/O-efficient algorithms for them. A general theme in our work is to design I/O-efficient algorithms through the design of I/O-efficient data structures. One of our philosophies is t...
متن کاملLEDA: A Library of Efficient Data Types and Algorithms
LEDA is a library of efficient data types and algorithms. At present, its strength is graph algorithms and related data structures. The computational geometry part is evolving. The main features of the library are • a clear separation of specification and implementation • parameterized data types • its extendibility • its ease of use. At present, the data types stack, queue, list, set, dictiona...
متن کاملA Finite Capacity Priority Queue with Discouragement
In this paper we report on a study of a two level preemptive priority queue with balking and reneging for lower priority level. The inter-arrival and the service times for both levels follow exponential distribution. We use a finite difference equation approach for solving the balance equations of the governing queuing model whose states are described by functions of one independent variable. H...
متن کاملEquivalence between Priority Queues and Sorting in External Memory
A priority queue is a fundamental data structure that maintains a dynamic ordered set of keys and supports the followig basic operations: insertion of a key, deletion of a key, and finding the smallest key. The complexity of the priority queue is closely related to that of sorting: A priority queue can be used to implement a sorting algorithm trivially. Thorup [11] proved that the converse is a...
متن کاملOptimal Signal Control in Urban Road Networks with High Priority Congested Centers
Keeping the density of traffic flow and air pollution in an acceptable level and developing a good capacity for transit in the high priority areas of the city, is really a big deal in large and crowded cities. To address this problem, a new method of intersection signal optimization is presented in this paper. Based on network fundamental diagrams, an Internal–External Traffic Metering Strategy...
متن کامل